package com.ruoyi.kanfang.util;

/**
 * @author limin
 * @description
 * @date 2024/4/28
 */
public class JsoupConstant {
    /** 标签类型 **/
    public static final String TAG_BODY = "body";
    public static final String TAG_DIV = "div";
    public static final String TAG_A = "a";
    public static final String TAG_LI = "li";

    /** Attr **/
    public static final String ATTR_HREF = "href";
    /**获取绝对路径**/
    public static final String ATTR_ABS_HREF = "abs:href";
    public static final String ATTR_CLASS = "class";
    public static final String ATTR_SRC = "src";
    public static final String ATTR_TITLE = "title";


    /**
     * 3、参数属性组合使用:
     * el#id 元素+id 如：div#id
     * el.class 元素+class 如：div.class
     * el[attr] 元素+属性 如：div[attr]
     * 任意组合 如：a[href].highlight 匹配所有带有href属性且class为highlight的a元素
     * ancestor child：查找某个元素下子元素 如：body p 查找body下的所有p元素
     * parent > child: 查找某个父元素下的直接子元素 如：div.content > p 查找p元素，也可以用 body > * 查找body下所有直接子元素
     * siblingA + siblingB: 查找在A元素之前第一个同级元素B，比如：div.head + div
     * siblingA ~ siblingX: 查找A元素之前的同级X元素，比如：h1 ~ p
     * el, el, el:多个选择器组合，查找匹配任一选择器的唯一元素，例如：div.masthead, div.logo
     *
     * 4：特殊参数：伪选择器
     * :lt(n): 查找哪些元素的同级索引值（它的位置在DOM树中是相对于它的父节点）小于n，比如：td:lt(3) 表示小于三列的元素
     * :gt(n):查找哪些元素的同级索引值大于n``，比如： div p:gt(2)表示哪些div中有包含2个以上的p元素
     * :eq(n): 查找哪些元素的同级索引值与n相等，比如：form input:eq(1)表示包含一个input标签的Form元素
     * :has(seletor): 查找匹配选择器包含元素的元素，比如：div:has§表示哪些div包含了p元素
     * :not(selector): 查找与选择器不匹配的元素，比如： div:not(.logo) 表示不包含 class=logo 元素的所有 div 列表
     * :contains(text): 查找包含给定文本的元素，搜索不区分大不写，比如： p:contains(jsoup)
     * :containsOwn(text): 查找直接包含给定文本的元素
     * :matches(regex): 查找哪些元素的文本匹配指定的正则表达式，比如：div:matches((?i)login)
     * :matchesOwn(regex): 查找自身包含文本匹配指定正则表达式的元素
     * 注意：上述伪选择器索引是从0开始的，也就是说第一个元素索引值为0，第二个元素index为1等
     *
     *
     */
}
